﻿using Nemerle.Collections;
using Nemerle.Text;
using Nemerle.Utility;

using System;
using System.Collections.Generic;
using System.Linq;

namespace Nemerle2.Compiler
{
  /// <summary>
  /// Description of ITypeParameterInfo.
  /// </summary>
  public interface ITypeParameterInfo
  {
    Constraints           : list[FixedType]  { get }
    LowerBound            : FixedType        { get }
    Name                  : string           { get }
    IsValueType           : bool             { get }
    IsReferenceType       : bool             { get }
    HasDefaultConstructor : bool             { get }
    IsCovariant           : bool             { get }
    IsContravariant       : bool             { get }
  }
}
